package com.ryan.mms.card.model;

// Generated 2011-11-1 14:54:46 by Hibernate Tools 3.4.0.CR1

import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import com.ryan.framework.model.Model;

/**
 * CardTransactionDetails generated by hbm2java
 */
@Entity
@Table(name = "card_transaction_details", catalog = "framework")
public class CardTransactionDetails implements Model {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private int txnId;
	private CardInfo cardInfo;
	private Integer txnType;
	private Integer memberId;
	private Integer cur;
	private BigDecimal amount;
	private Integer consumePts;
	private Integer getPts;
	private Integer organizationId;
	private String organizationName;
	private Integer terminalId;
	private String terminalName;
	private Integer operatorId;
	private Date reconciliationDate;
	private Date txnTime;
	private Integer voided;
	private Date voidedTime;

	public CardTransactionDetails() {
	}

	public CardTransactionDetails(int txnId) {
		this.txnId = txnId;
	}

	public CardTransactionDetails(int txnId, CardInfo cardInfo,
			Integer txnType, Integer memberId, Integer cur, BigDecimal amount,
			Integer consumePts, Integer getPts, Integer organizationId,
			String organizationName, Integer terminalId, String terminalName,
			Integer operatorId, Date reconciliationDate, Date txnTime,
			Integer voided, Date voidedTime) {
		this.txnId = txnId;
		this.cardInfo = cardInfo;
		this.txnType = txnType;
		this.memberId = memberId;
		this.cur = cur;
		this.amount = amount;
		this.consumePts = consumePts;
		this.getPts = getPts;
		this.organizationId = organizationId;
		this.organizationName = organizationName;
		this.terminalId = terminalId;
		this.terminalName = terminalName;
		this.operatorId = operatorId;
		this.reconciliationDate = reconciliationDate;
		this.txnTime = txnTime;
		this.voided = voided;
		this.voidedTime = voidedTime;
	}

	@Id
	@Column(name = "txn_id", unique = true, nullable = false)
	public int getTxnId() {
		return this.txnId;
	}

	public void setTxnId(int txnId) {
		this.txnId = txnId;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "card_no")
	public CardInfo getCardInfo() {
		return this.cardInfo;
	}

	public void setCardInfo(CardInfo cardInfo) {
		this.cardInfo = cardInfo;
	}

	@Column(name = "txn_type")
	public Integer getTxnType() {
		return this.txnType;
	}

	public void setTxnType(Integer txnType) {
		this.txnType = txnType;
	}

	@Column(name = "member_id")
	public Integer getMemberId() {
		return this.memberId;
	}

	public void setMemberId(Integer memberId) {
		this.memberId = memberId;
	}

	@Column(name = "cur")
	public Integer getCur() {
		return this.cur;
	}

	public void setCur(Integer cur) {
		this.cur = cur;
	}

	@Column(name = "amount", precision = 15)
	public BigDecimal getAmount() {
		return this.amount;
	}

	public void setAmount(BigDecimal amount) {
		this.amount = amount;
	}

	@Column(name = "consume_pts")
	public Integer getConsumePts() {
		return this.consumePts;
	}

	public void setConsumePts(Integer consumePts) {
		this.consumePts = consumePts;
	}

	@Column(name = "get_pts")
	public Integer getGetPts() {
		return this.getPts;
	}

	public void setGetPts(Integer getPts) {
		this.getPts = getPts;
	}

	@Column(name = "organization_id")
	public Integer getOrganizationId() {
		return this.organizationId;
	}

	public void setOrganizationId(Integer organizationId) {
		this.organizationId = organizationId;
	}

	@Column(name = "organization_name", length = 30)
	public String getOrganizationName() {
		return this.organizationName;
	}

	public void setOrganizationName(String organizationName) {
		this.organizationName = organizationName;
	}

	@Column(name = "terminal_id")
	public Integer getTerminalId() {
		return this.terminalId;
	}

	public void setTerminalId(Integer terminalId) {
		this.terminalId = terminalId;
	}

	@Column(name = "terminal_name", length = 128)
	public String getTerminalName() {
		return this.terminalName;
	}

	public void setTerminalName(String terminalName) {
		this.terminalName = terminalName;
	}

	@Column(name = "operator_id")
	public Integer getOperatorId() {
		return this.operatorId;
	}

	public void setOperatorId(Integer operatorId) {
		this.operatorId = operatorId;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "reconciliation_date", length = 10)
	public Date getReconciliationDate() {
		return this.reconciliationDate;
	}

	public void setReconciliationDate(Date reconciliationDate) {
		this.reconciliationDate = reconciliationDate;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "txn_time", length = 10)
	public Date getTxnTime() {
		return this.txnTime;
	}

	public void setTxnTime(Date txnTime) {
		this.txnTime = txnTime;
	}

	@Column(name = "voided")
	public Integer getVoided() {
		return this.voided;
	}

	public void setVoided(Integer voided) {
		this.voided = voided;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "voided_time", length = 10)
	public Date getVoidedTime() {
		return this.voidedTime;
	}

	public void setVoidedTime(Date voidedTime) {
		this.voidedTime = voidedTime;
	}

}
